package com.igeekhome.service;

import com.github.pagehelper.PageInfo;
import com.igeekhome.pojo.BaseDict;
import com.igeekhome.util.ResultBean;
import com.igeekhome.util.TableResultBean;

import java.util.List;

/**
 * @author Romeo
 */
public interface IDiceService {
    /**
     * 字典表列表显示，如果需要模糊搜索查询请更改此代码
     * @param page 分页
     * @param limit 分页
     * @param code 状态码
     * @return  TableResultBean结果集
     */
    PageInfo lists(Integer page, Integer limit, String code);


    /**
     * 用来为下拉框获取数据
     * （状态停用时候可以显示）
     * @param code 字典表里的状态码
     * @return
     */
    List<BaseDict> list(String code);

    /**
     * 字典表新增
     * @param baseDict 传入字典的所有数据（在controller中设置问题件状态码，默认状态为1开启状态）
     * @return ResultBean结果集
     */
    ResultBean add(BaseDict baseDict);

    /**
     * 字典表的更新
     * @param baseDict 传入字典的所有数据(在controller中设置问题件状态码)
     * @return ResultBean结果集
     */
    ResultBean edit(BaseDict baseDict);

    /**
     * 字典表的删除（物理删除）
     * @param idStr 前台传递的主键字段（1,2,3）使用逗号分割
     * @return
     */
    ResultBean delete(String idStr);


    /**
     * 字典表列表显示，如果需要模糊搜索查询请更改此代码
     * @param page 分页
     * @param limit 分页
     * @param code 状态码
     * @return  TableResultBean结果集
     */
    TableResultBean list(Integer page, Integer limit, String code);

    /**
     * 通过状态值查询所需数据
     * （状态停用时候不显示）
     * @param dictTypeCode 状态值
     * @return 结果集
     */
    List<BaseDict> selectByTypeCode(String dictTypeCode);

}
